package clients;

import java.util.ArrayList;
import java.util.List;
import java.util.Random;

import barsbieres.Bar;
import barsbieres.Biere;
import barsbieres.Main;

/**
 * Vient toujours au m�me bar, m�me s'il ne trouve pas sa bi�re
 * 
 */
public class ClientFidele extends Client {

	private final int FIDELITE;
	private List<Bar> blackList;

	public ClientFidele(ArrayList<Biere> bieres) {
		super();
		bieresPreferees = bieresPreferees(bieres);
		this.blackList = new ArrayList<Bar>();
		this.nomC = "Client fidele";
		this.FIDELITE = new Random().nextInt(100);
	}
	
	protected int getFidelite() {
		return this.FIDELITE;
	}
	
	@Override
	public void choisitBar(ArrayList<Bar> listeBars) {
		
		boolean trouver = false;
		while(!trouver){
			int r = new Random().nextInt(listeBars.size());
			if(!blackList.contains(listeBars.get(r))){
				listeBars.get(r).incNbrCFidele();
				setBar(listeBars.get(r));
				trouver = true;
				//System.out.println("Nouveau bar : " + getBar().getGerant().getNom());
			}
		}
	}

	@Override
	public void satisfaction(Bar b, boolean satisfait) {
		// TODO Auto-generated method stub
	}

}
